Soru & Cevap

byte[] data = {0x01, 0x02}; dizisindeki 0x01 ne demek?

06.05.2017 - 10:43

Merhaba arkadaşlar,

Android 101 Javada Dosya İşlemleri dersinde şuraya takıldım.

byte[] data = {0x01, 0x02}; diye bir dizi tanımlanmış, burada 0x01 ne anlama geliyor, byte tipi normalde -128 ile 127 arasında tam sayı değeri alıyordu çünkü.

Derste şöyle de bir ifade var: "Eğer bir resmi ya da İnternet üzerinden çektiğimiz bir dosyayı diske kayıt etmek istiyorsak, metin dosyası yerine binary dosya kullanmamız gerekir." neden illaki binary'ye çevirmemiz gerekiyor, metin dosyası olarak niye kayıt edemiyoruz?

Katkılarınız için teşekkürler..

1,116 Görüntülenme

3 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user ulas742
ulas742
06.05.2017 - 05:27

0x ile baslayan rakamlar Hexadecimal gosterimli rakamlardir. Kullanim sebebi ise aslinda binevi gorselliktir. Siz bir datayi Octal decimal veya Hexadecimal hatta bazen Base64 bile girseniz bilgisayar onu 2 tabani uzerinden degerlendirecektir. Hexadecimal kullanmamizin sebebi decimal gosterimi kolay anlasilmayacak yada gereksizce uzun olan rakamlari kisa gosterebilmektir.

Baska bir dosya kaydederken binary kullanmanizin sebebide dosya formatlama. Text dosyalarida aslinda binary , bilgisayariniz bu dosyalari rakam olarak kaydediyor ve actiginiz zaman bu rakamlara uygun sekilde anlam kazandiriyor. Baska tip bir dosya kullandiginizda bu dosyalarinda kendine gore , data structurelari var bunlari dogru yorumlatmak icin binary modunda acmamiz gerekiyor dosyalari.

picture-21203-1418223380.jpg
murat_balcı
06.05.2017 - 11:35

Şu şekilde zaten 0x01 tarzında aratma yaparsan senin bulacağın şey hexadecimal kodlar olacaktır.

Aşağıdaki paylaştığım resme bakarsan daha iyi anlarsın.

Sonuçta bilgisayar herşeyi 0 ve 1 (binary) e çevirerek derleme okuma yazma vs yapıyor sonuçta o girile hexadecimal kod'da binary'e çevirilecektir. 

/sites/default/files/cevaplar/dosya/2020/file-we.png
Jay
06.05.2017 - 03:52
teşekkürler hexadecimal konusu tamamdır, ama tırnak içine aldığım ifade kafamı karıştırdı. Sonuçta javadaki I/O sınıflarını kullanarak .txt gibi formatlarda binary'e çevirmeden diskte dosya oluşturabiliyoruz.
picture-108279-1493967677.jpg
technolojay
06.05.2017 - 11:21

0x01 hexadecimal olarak gösterimmiş, onu buldum.

ama binary dosyayı neden kullanmamız gerekir? katkılarınızı rica ediyorum arkadaşlar..